package pers.chao.cacheable.core.annotation;

import pers.chao.cacheable.core.consts.RedisStructEnum;
import pers.chao.cacheable.core.consts.EvictEqType;

import java.lang.annotation.*;

@Target({ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@RedisStruct(RedisStructEnum.SET)
public @interface CacheSet {
	// 是否整体替换(清除所有旧元素，缓存新元素)
	boolean replaceAll() default false;
	// 批量删除，支持EL表达式
	String evictElement() default "";
	// 清除等值元素类型
	EvictEqType eqValueType() default EvictEqType.STRING;
}
